home *** CD-ROM | disk | FTP | other *** search
- Listing 3 Retrieving Display Device Characteristics
-
-
- struct DeviceInfo
- {
- WORD version;
- WORD technology;
- WORD horzRes; /* pixels */
- WORD vertRes; /* lines */
- WORD adjacentPixel;
- WORD colorPlanes;
- WORD colorTable;
- WORD paletteSize;
- WORD reservedPalette;
- WORD bitsPerPixel;
- int BANDsupport; /* T or F */
- int BM64support; /* T or F */
- int GDIBsupport; /* T or F */
- int SDIBTDsupport; /* T or F */
- int PALsupport; /* T or F */
- } devInf;
-
- /*-------------------------------------------------*/
-
- void getDeviceCapsInfo (HDC hDC,
- struct DeviceInfo *devInf)
- /*
- */
- {
- WORD rcaps;
-
- devInf->version =
- (WORD)GetDeviceCaps(hDC,DRIVERVERSION);
- devInf->technology =
- (WORD)GetDeviceCaps(hDC,TECHNOLOGY);
- devInf->horzRes =
- (WORD)GetDeviceCaps(hDC,HORZRES);
- devInf->vertRes =
- (WORD)GetDeviceCaps(hDC,VERTRES);
- devInf->adjacentPixel =
- (WORD)GetDeviceCaps(hDC,BITSPIXEL);
- devInf->colorPlanes =
- (WORD)GetDeviceCaps(hDC,PLANES);
- devInf->colorTable =
- (WORD)GetDeviceCaps(hDC,NUMCOLORS);
- devInf->paletteSize =
- (WORD)GetDeviceCaps(hDC,SIZEPALETTE);
- devInf->reservedPalette =
- (WORD)GetDeviceCaps(hDC,NUMRESERVED);
- devInf->bitsPerPixel =
- (WORD)GetDeviceCaps(hDC,COLORRES);
-
- rcaps = (WORD)GetDeviceCaps(hDC,RASTERCAPS);
-
- if (rcaps & RC_BANDING)
- devInf->BANDsupport = TRUE;
- else devInf->BANDsupport = FALSE;
-
- if (rcaps & RC_BITMAP64)
- devInf->BM64support = TRUE;
- else devInf->BM64support = FALSE;
-
- if (rcaps & RC_DI_BITMAP)
- devInf->GDIBsupport = TRUE;
- else devInf->GDIBsupport = FALSE;
-
- if (rcaps & RC_DIBTODEV)
- devInf->SDIBTDsupport = TRUE;
- else devInf->SDIBTDsupport = FALSE;
-
- if (rcaps & RC_PALETTE)
- devInf->PALsupport = TRUE;
- else devInf->PALsupport = FALSE;
- } /* getDeviceCapsInfo */
-